package com.shrct.businessprocess.purchase;

import com.shrct.businessprocess.project.RCExchangeRate;
import com.shrct.businessprocess.purchase.RCBaseProductPurchaseBudget;
import com.shrct.businessprocess.purchase.RCPayRequest;
import com.shrct.businessprocess.purchase.RCTransferCostTransaction;
import com.shrct.businessprocess.purchase.impl.RCTransforCostPayRequestImpl;
import com.shrct.businessprocess.purchase.proxy.RCTransforCostPayRequestProxy;
import edu.fudan.mylang.pf.EntityImplementation;

@EntityImplementation(implementBy = RCTransforCostPayRequestImpl.class)
public interface RCTransforCostPayRequest extends RCPayRequest {
  public abstract RCTransferCostTransaction getTransaction();
  
  public abstract RCTransforCostPayRequest setTransaction(final RCTransferCostTransaction transaction);
  
  public abstract RCBaseProductPurchaseBudget getBudget();
  
  public abstract RCTransforCostPayRequest setBudget(final RCBaseProductPurchaseBudget budget);
  
  public abstract RCExchangeRate getDefaultExchangeRate();
  
  public abstract String getEntityName();
  
  public abstract RCTransforCostPayRequestProxy toProxy();
}
